---
import type { FAQType } from '../../components/FAQs/FAQs.astro';

export const faqs: FAQType[] = [
  {
    question: 'How to become a Backend Developer?',
    answer: [
      "If you are a complete beginner who is just getting started, you can start by learning a backend programming language such as Python, Ruby, Java, Go etc. Once you have got the basic to intermediate understanding of the language, learn about the package manager for that language and learn how to install and use external packages into your applications. Learn the basics of some relational database e.g. PostgreSQL and learn how to run simple CRUD operations. Optionally, you can pick up and learn a web framework for the language of your choice as well. Learn how to build a simple RESTful API and implement simple Authentication/Authorization into it. While you are learning all the items mentioned above, don't forget to learn about Git and GitHub as well.",
      'After following all the instructions above, you can start applying for the entry level backend developer jobs. Also, look at the backend developer roadmap above to get an idea about the landscape and see what else you are missing. A degree in computer science or related field is not always necessary but networking, building a portfolio and actively seeking internships, junior developer positions or consulting can help to start and advance a career as a backend developer.',
      "Note: remember to create a lot of [projects](https://roadmap.sh/backend/project-ideas) while you are learning to solidify your understanding of the concepts. Also, it's important to have the attitude of continuous learning to improve your [skills](https://roadmap.sh/backend/developer-skills) and be prepared for the fast-paced technology evolution in the industry.",
    ],
  },
  {
    question: 'How long does it take to become a Backend Developer?',
    answer: [
      'The amount of time it takes to become a backend developer can vary depending on several factors, such as your learning pace, previous experience and the amount of time you are able to dedicate to learning.',
      'If you have a background in computer science or a related field, and have experience with programming, you may be able to become a backend developer relatively quickly, potentially within a few months. However, if you are starting with little or no prior experience or education in computer science, it may take longer to develop the necessary skills and gain the experience needed to be a proficient backend developer. It could take anywhere from 6 months to 2 years.',
    ],
  },
  {
    question: 'What are the Backend Developer salaries?',
    answer: [
      'Backend developer salaries can vary depending on factors such as location, experience, and company size. According to data from Glassdoor, the average base salary for a backend developer in the United States is around $92,000 per year. However, this number can vary greatly depending on location, with the highest-paying cities such as San Francisco, Seattle and New York having an average salary of $120,000 to $135,000 per year.',
      "It's important to keep in mind that these are just averages, and salaries can vary greatly depending on factors such as experience level, specific skills, and the company you work for. With more experience and specific skills relevant to the job you are applying for you can expect to earn more.",
      'It is worth looking at a range of resources, including salary surveys, and job boards to get a general understanding of the current market in your location and experience level. Also try reaching out to other professionals in the field and getting an understanding of their own experience and salary ranges.',
    ],
  },
  {
    question: 'Should I learn everything listed on the Backend Roadmap?',
    answer: [
      "This roadmap contains everything that you might encounter while working as a Backend Developer. You may not need everything listed on this roadmap to get into the industry; every job is different and most roles will require a subset of the items on the roadmap as part of their [job description](https://roadmap.sh/backend/job-description). However, knowing what you don't know is as important as knowing things, so you can use this roadmap to get an idea of what you are missing as well.",
      'If you are a beginner who is just getting started, don\'t feel overwhelmed by looking at this roadmap. Look at the answer to the FAQ "How to become a Backend Developer?"',
    ],
  },
  {
      question: 'What tools does a backend developer use?',
      answer: [
          'Other than the language itself, some common [backend developer tools](https://roadmap.sh/backend/developer-tools) that you’ll use as a backend dev, are going to be: The IDE/Text editor; here you have tons of options from VSCode, to Zed or Sublime Text. Some database tools, such as DataGrid or Navicat interact with your databases from outside your code. API-related tools like Swagger or Postman will help you document their behavior and share the endpoints with your team. A hosting service for your code. And finally, some collaborative and productivity tools such as Jira, Wrike, Trello or Monday to help you organize your work with your colleagues. And others like Raycast or iTerm to boost your productivity. There are many alternatives in each category, it’s up to you to try them and pick the ones that work best for you.',

      ]
  },
  {
      question: 'What are backend frameworks?',
      answer: [
          '[Backend frameworks](https://roadmap.sh/backend/frameworks) are the frameworks that power the server-side of web applications. They are responsible for managing data, processing requests, and generating responses to the client-side of the application. Some of the most popular backend frameworks include Django for Python, Ruby on Rails for Ruby, Spring Boot for Java, and Gin for Go.',
          'These frameworks work alongside databases like PostgreSQL, MySQL, and MongoDB, as well as tools like Docker, Kubernetes, and Jenkins. Backend frameworks, along with other server-side components, work together to create the functionality that users interact with on the client-side of web applications.'

      ]
  }
];
---
